Serveur d'exploration sur la recherche en informatique en Lorraine

Attention, ce site est en cours de développement !
Attention, site généré par des moyens informatiques à partir de corpus bruts.
Les informations ne sont donc pas validées.

Modeling sharing and recursion for weak reduction strategies using explicit substitution

Identifieur interne : 00C054 ( Main/Exploration ); précédent : 00C053; suivant : 00C055

Modeling sharing and recursion for weak reduction strategies using explicit substitution

Auteurs : Zine-El-Abidine Benaissa [France] ; Pierre Lescanne [France] ; Kristoffer H. Rose [Danemark]

Source :

RBID : ISTEX:B4CA52C0FB46513B3B83B18F1F8CACF39E736720

Descripteurs français

English descriptors

Abstract

Abstract: We present the λσ w a -calculus, a formal synthesis of the concepts of sharing and explicit substitution for weak reduction. We show how λσ w a , can be used as a foundation of implementations of functional programming languages by modeling the essential ingredients of such implementations, namely weak reduction strategies, recursion, space leaks, recursive data structures, and parallel evaluation. We use λσ w a , to give a unified model of several computational aspects. First, we give a precise account of the major reduction strategies used in functional programming and the consequences of choosing λ-graph-reduction vs. environment-based evaluation. Second, we show how to add constructors and explicit recursion to give a precise account of recursive functions and data structures even with respect to space complexity. Third, we formalize the notion of space leaks in λσ w a and use this to define a space leak free calculus; this suggests optimisations for call-by-need reduction that prevent space leaking and enables us to prove that the “trimming” performed by the STG machine does not leak space. In summary we give a formal account of several implementation techniques used by state of the art implementations of functional programming languages.

Url:
DOI: 10.1007/3-540-61756-6_99


Affiliations:


Links toward previous steps (curation, corpus...)


Le document en format XML

<record>
<TEI wicri:istexFullTextTei="biblStruct">
<teiHeader>
<fileDesc>
<titleStmt>
<title xml:lang="en">Modeling sharing and recursion for weak reduction strategies using explicit substitution</title>
<author>
<name sortKey="Benaissa, Zine El Abidine" sort="Benaissa, Zine El Abidine" uniqKey="Benaissa Z" first="Zine-El-Abidine" last="Benaissa">Zine-El-Abidine Benaissa</name>
</author>
<author>
<name sortKey="Lescanne, Pierre" sort="Lescanne, Pierre" uniqKey="Lescanne P" first="Pierre" last="Lescanne">Pierre Lescanne</name>
<affiliation>
<country>France</country>
<placeName>
<settlement type="city">Nancy</settlement>
<region type="region" nuts="2">Grand Est</region>
<region type="region" nuts="2">Lorraine (région)</region>
</placeName>
<orgName type="laboratoire" n="5">Laboratoire lorrain de recherche en informatique et ses applications</orgName>
<orgName type="university">Université de Lorraine</orgName>
<orgName type="institution">Centre national de la recherche scientifique</orgName>
<orgName type="institution">Institut national de recherche en informatique et en automatique</orgName>
</affiliation>
</author>
<author>
<name sortKey="Rose, Kristoffer H" sort="Rose, Kristoffer H" uniqKey="Rose K" first="Kristoffer H." last="Rose">Kristoffer H. Rose</name>
</author>
</titleStmt>
<publicationStmt>
<idno type="wicri:source">ISTEX</idno>
<idno type="RBID">ISTEX:B4CA52C0FB46513B3B83B18F1F8CACF39E736720</idno>
<date when="1996" year="1996">1996</date>
<idno type="doi">10.1007/3-540-61756-6_99</idno>
<idno type="url">https://api.istex.fr/ark:/67375/HCB-LKMHM4M3-6/fulltext.pdf</idno>
<idno type="wicri:Area/Istex/Corpus">002A78</idno>
<idno type="wicri:explorRef" wicri:stream="Istex" wicri:step="Corpus" wicri:corpus="ISTEX">002A78</idno>
<idno type="wicri:Area/Istex/Curation">002A41</idno>
<idno type="wicri:Area/Istex/Checkpoint">002955</idno>
<idno type="wicri:explorRef" wicri:stream="Istex" wicri:step="Checkpoint">002955</idno>
<idno type="wicri:doubleKey">0302-9743:1996:Benaissa Z:modeling:sharing:and</idno>
<idno type="wicri:Area/Main/Merge">00C875</idno>
<idno type="wicri:source">INIST</idno>
<idno type="RBID">Pascal:97-0023506</idno>
<idno type="wicri:Area/PascalFrancis/Corpus">000C95</idno>
<idno type="wicri:Area/PascalFrancis/Curation">000B83</idno>
<idno type="wicri:Area/PascalFrancis/Checkpoint">000C88</idno>
<idno type="wicri:explorRef" wicri:stream="PascalFrancis" wicri:step="Checkpoint">000C88</idno>
<idno type="wicri:doubleKey">0302-9743:1996:Benaissa Z:modeling:sharing:and</idno>
<idno type="wicri:Area/Main/Merge">00C975</idno>
<idno type="wicri:Area/Main/Curation">00C054</idno>
<idno type="wicri:Area/Main/Exploration">00C054</idno>
</publicationStmt>
<sourceDesc>
<biblStruct>
<analytic>
<title level="a" type="main" xml:lang="en">Modeling sharing and recursion for weak reduction strategies using explicit substitution</title>
<author>
<name sortKey="Benaissa, Zine El Abidine" sort="Benaissa, Zine El Abidine" uniqKey="Benaissa Z" first="Zine-El-Abidine" last="Benaissa">Zine-El-Abidine Benaissa</name>
<affiliation wicri:level="3">
<country xml:lang="fr">France</country>
<wicri:regionArea>INRIA-Lorraine & CRIN, Bâtiment LORIA, 615, rue du Jardin Botanique, BP 101, F-54602, Villers les Nancy Cedex</wicri:regionArea>
<placeName>
<region type="region" nuts="2">Grand Est</region>
<region type="old region" nuts="2">Lorraine (région)</region>
<settlement type="city">Villers les Nancy</settlement>
</placeName>
</affiliation>
<affiliation wicri:level="1">
<country wicri:rule="url">France</country>
</affiliation>
</author>
<author>
<name sortKey="Lescanne, Pierre" sort="Lescanne, Pierre" uniqKey="Lescanne P" first="Pierre" last="Lescanne">Pierre Lescanne</name>
<affiliation wicri:level="3">
<country xml:lang="fr">France</country>
<wicri:regionArea>INRIA-Lorraine & CRIN, Bâtiment LORIA, 615, rue du Jardin Botanique, BP 101, F-54602, Villers les Nancy Cedex</wicri:regionArea>
<placeName>
<region type="region" nuts="2">Grand Est</region>
<region type="old region" nuts="2">Lorraine (région)</region>
<settlement type="city">Villers les Nancy</settlement>
</placeName>
<placeName>
<settlement type="city">Nancy</settlement>
<region type="region" nuts="2">Grand Est</region>
<region type="region" nuts="2">Lorraine (région)</region>
</placeName>
<orgName type="laboratoire" n="5">Laboratoire lorrain de recherche en informatique et ses applications</orgName>
<orgName type="university">Université de Lorraine</orgName>
<orgName type="institution">Centre national de la recherche scientifique</orgName>
<orgName type="institution">Institut national de recherche en informatique et en automatique</orgName>
</affiliation>
<affiliation wicri:level="1">
<country wicri:rule="url">France</country>
<placeName>
<settlement type="city">Nancy</settlement>
<region type="region" nuts="2">Grand Est</region>
<region type="region" nuts="2">Lorraine (région)</region>
</placeName>
<orgName type="laboratoire" n="5">Laboratoire lorrain de recherche en informatique et ses applications</orgName>
<orgName type="university">Université de Lorraine</orgName>
<orgName type="institution">Centre national de la recherche scientifique</orgName>
<orgName type="institution">Institut national de recherche en informatique et en automatique</orgName>
</affiliation>
</author>
<author>
<name sortKey="Rose, Kristoffer H" sort="Rose, Kristoffer H" uniqKey="Rose K" first="Kristoffer H." last="Rose">Kristoffer H. Rose</name>
<affiliation wicri:level="1">
<country xml:lang="fr">Danemark</country>
<wicri:regionArea>Basic Research in Computer Science (Centre of the Danish National Research Foundation), Dept. of Computer Science, University of Aarhus, Ny Munkegade, DK-8000, Aarhus C</wicri:regionArea>
<wicri:noRegion>Aarhus C</wicri:noRegion>
</affiliation>
<affiliation wicri:level="1">
<country wicri:rule="url">Danemark</country>
</affiliation>
</author>
</analytic>
<monogr></monogr>
<series>
<title level="s" type="main" xml:lang="en">Lecture Notes in Computer Science</title>
<title level="s" type="abbrev">Lect Notes Comput Sci</title>
<idno type="ISSN">0302-9743</idno>
<idno type="eISSN">1611-3349</idno>
<idno type="ISSN">0302-9743</idno>
</series>
</biblStruct>
</sourceDesc>
<seriesStmt>
<idno type="ISSN">0302-9743</idno>
</seriesStmt>
</fileDesc>
<profileDesc>
<textClass>
<keywords scheme="KwdEn" xml:lang="en">
<term>Functional programming</term>
<term>Lambda calculus</term>
<term>Modeling</term>
<term>Recursive function</term>
<term>Recursivity</term>
<term>Sharing</term>
<term>Substitution</term>
</keywords>
<keywords scheme="Pascal" xml:lang="fr">
<term>Fonction récursive</term>
<term>Lambda calcul</term>
<term>Modélisation</term>
<term>Partage</term>
<term>Programmation fonctionnelle</term>
<term>Récursivité</term>
<term>Substitution</term>
</keywords>
</textClass>
</profileDesc>
</teiHeader>
<front>
<div type="abstract" xml:lang="en">Abstract: We present the λσ w a -calculus, a formal synthesis of the concepts of sharing and explicit substitution for weak reduction. We show how λσ w a , can be used as a foundation of implementations of functional programming languages by modeling the essential ingredients of such implementations, namely weak reduction strategies, recursion, space leaks, recursive data structures, and parallel evaluation. We use λσ w a , to give a unified model of several computational aspects. First, we give a precise account of the major reduction strategies used in functional programming and the consequences of choosing λ-graph-reduction vs. environment-based evaluation. Second, we show how to add constructors and explicit recursion to give a precise account of recursive functions and data structures even with respect to space complexity. Third, we formalize the notion of space leaks in λσ w a and use this to define a space leak free calculus; this suggests optimisations for call-by-need reduction that prevent space leaking and enables us to prove that the “trimming” performed by the STG machine does not leak space. In summary we give a formal account of several implementation techniques used by state of the art implementations of functional programming languages.</div>
</front>
</TEI>
<affiliations>
<list>
<country>
<li>Danemark</li>
<li>France</li>
</country>
<region>
<li>Grand Est</li>
<li>Lorraine (région)</li>
</region>
<settlement>
<li>Nancy</li>
<li>Villers les Nancy</li>
</settlement>
<orgName>
<li>Centre national de la recherche scientifique</li>
<li>Institut national de recherche en informatique et en automatique</li>
<li>Laboratoire lorrain de recherche en informatique et ses applications</li>
<li>Université de Lorraine</li>
</orgName>
</list>
<tree>
<country name="France">
<region name="Grand Est">
<name sortKey="Benaissa, Zine El Abidine" sort="Benaissa, Zine El Abidine" uniqKey="Benaissa Z" first="Zine-El-Abidine" last="Benaissa">Zine-El-Abidine Benaissa</name>
</region>
<name sortKey="Benaissa, Zine El Abidine" sort="Benaissa, Zine El Abidine" uniqKey="Benaissa Z" first="Zine-El-Abidine" last="Benaissa">Zine-El-Abidine Benaissa</name>
<name sortKey="Lescanne, Pierre" sort="Lescanne, Pierre" uniqKey="Lescanne P" first="Pierre" last="Lescanne">Pierre Lescanne</name>
<name sortKey="Lescanne, Pierre" sort="Lescanne, Pierre" uniqKey="Lescanne P" first="Pierre" last="Lescanne">Pierre Lescanne</name>
</country>
<country name="Danemark">
<noRegion>
<name sortKey="Rose, Kristoffer H" sort="Rose, Kristoffer H" uniqKey="Rose K" first="Kristoffer H." last="Rose">Kristoffer H. Rose</name>
</noRegion>
<name sortKey="Rose, Kristoffer H" sort="Rose, Kristoffer H" uniqKey="Rose K" first="Kristoffer H." last="Rose">Kristoffer H. Rose</name>
</country>
</tree>
</affiliations>
</record>

Pour manipuler ce document sous Unix (Dilib)

EXPLOR_STEP=$WICRI_ROOT/Wicri/Lorraine/explor/InforLorV4/Data/Main/Exploration
HfdSelect -h $EXPLOR_STEP/biblio.hfd -nk 00C054 | SxmlIndent | more

Ou

HfdSelect -h $EXPLOR_AREA/Data/Main/Exploration/biblio.hfd -nk 00C054 | SxmlIndent | more

Pour mettre un lien sur cette page dans le réseau Wicri

{{Explor lien
   |wiki=    Wicri/Lorraine
   |area=    InforLorV4
   |flux=    Main
   |étape=   Exploration
   |type=    RBID
   |clé=     ISTEX:B4CA52C0FB46513B3B83B18F1F8CACF39E736720
   |texte=   Modeling sharing and recursion for weak reduction strategies using explicit substitution
}}

Wicri

This area was generated with Dilib version V0.6.33.
Data generation: Mon Jun 10 21:56:28 2019. Site generation: Fri Feb 25 15:29:27 2022